#include <cocos2d.h>

USING_NS_CC;
using namespace std;

//牌的类型
typedef enum
{
	//牌型错误
	POKER_TYPE_ERROR,
	//单张
	POKER_TYPE_SINGLE,
	//对子
	POKER_TYPE_DOUBLE,
	//顺子
	POKER_TYPE_STRAIGHT,
	//三张炸弹
	POKER_TYPE_THREE_BOMB,
	//四张炸弹
	POKER_TYPE_FOUR_BOMB,
	//王炸
	POKER_TYPE_KING_BOMB,
	//双红十炸
	POKER_TYPE_REDTEN_BOMB
}Pokertype;


class CardGame 
{
public:
	CardGame();//构造函数

	//单例(具有唯一实例）
	static CardGame *getInstance();
	//清理单例
	static void cleanInstance();

	bool gameDidBegan;//游戏是否开始

    char first; // 当前局谁先出牌(其实就是♥️3的位置)
    char red10_fk; // ♦️10
    char red10_hx; // ♥️10
    
	Node *selfCards_node;//存放自己牌精灵的节点

	Sprite *getCardSpriteWithValue(int value);//通过值来获取卡牌精灵
    // 洗牌函数
    void shuffle(int a[], int len);

	//获取牌型
	Pokertype getPokerTypeWithCards(vector<int>arr);

	//收拢手牌
	void closeSelfCards();

	vector<int> suggest(int selfCards[],int selfCardsCount,vector<int> lastCards);
};
